home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 40
/
Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso
/
Aminet
/
util
/
boot
/
SystemPatch.lha
/
SystemPatch.readme
< prev
Wrap
Text File
|
2000-10-24
|
5KB
|
150 lines
DESCRIPTION:
SystemPatch replaces some functions of the operating system with optimized
ones, increasing the system efficiency in multitasking environment.
REQUIREMENTS:
OS3.0+ (should work too with OS2.x but i'm not sure).
CPU 68020 or 68030 (also works with higher processor but it's optimized
for these ones).
Some FAST RAM!!!
WHAT DOES IT DO:
It patches these functions:
in graphics.library
DisownBlitter()
InitRastPort()
SetFont()
ClearEOL()
ClearScreen()
TextLength()
WaitTOF()
WaitBlit()
QBlit()
QBSBlit()
AreaMove()
EraseRect()
in exec.library
Forbid()
SetSignal()
Signal()
Wait()
Schedule()
Reschedule()
Exception()
ExitIntr()
Dispatch()
Cause()
PutMsg()
ReplyMsg()
Enqueue()
WaitPort()
RemPort()
Insert()
AddHead()
Remove()
RemHead()
RemTail()
SetExcept()
Switch()
InitSemaphore()
AddSemaphore()
AddPort()
RemResource()
RemSEmaphore()
ReleaseSemaphore()
in layers.library
DoHookClipRects()
in utility.library
SMult32()
UMult32()
SMult64()
UMult64()
SDivMod32()
UDivMod32()
In SDivMod32() and UDivMod32(), i've introduced a check of operand that original
system functions do not make to avoid crashes due to divide by zero errors.
It replaces Auto Vector Interrupts routines with faster ones.
The patches do not interfere with other programs like:
FBlit, FText, SysPatch (best if you run SystemPatch after it), CMQ (and
other CopyMem() patches), MCP, QBC, PatchWPA8, NewWPA8, BlazeWCP,
PoolMem, Executive.
NOTE: SystemPatch is optimized for 020 and 030 processors but you can
also use it if you have higher processor, these routines are even faster
than the originals.
INSTALLATION:
From shell or from your user-startup just type the program name.
If you have not fast memory or not enough memory or inadeguate
processor it exits silently without installing anything.
If you have Executive is best to launch SystemPatch before it.
DISTRIBUTION:
SystemPatch is FREEWARE. Use it at your own risk.
AUTHOR:
If this program does not crash on your system or you think it is useful let
me know about it.
Write me! Congratulations and insults are welcome.
E-mail: ziosante@libero.it
BUGS:
I hope no one!
Tested on :
A1200 OS3.0 68020 8 Meg Fast Ram
A1200 OS3.0 Blizzard IV 16 Meg Fast Ram
HISTORY:
- 1.7b New UDivMod32() and SDviMod32() patches: these make a control on
operands before taking division to avoid divide by zero errors.
This fixes problems with programs that call that functions with
wrong arguments(causing divide by zero errors).
- 1.7 Removed Interrupts Vector patches because of a bug with mfm decoding of
trackdisk.
- 1.6f General speedup to interrupt vectors and auto vector interrupts.
- 1.6e Corrected a bug in SOFTINT. Little speedup to BLIT.
- 1.6d Reworked code for a better use of caches.
- 1.6c Little speedup to InitRastPort().
- 1.6 Added AreaMove(), EraseRect(), ReleaseSemaphore().
Added Interrupt Vectors patches (see patches list in this doc).
- 1.5g Added InitSemaphore(), AddSemaphore(), AddPort(), RemResource(),
RemSemaphore().
Little speedup to Switch() and DoHookClipRects().
- 1.5f Little speedup to DoHookClipRects(). Changed the installation code.
- 1.5e Nothing changed except the source. Now uses CopyMemQuick() to install
the patches.
- 1.5d Added DoHookClipRects() patch.
- 1.5c Readded Switch(), now works perfectly. If Executive is launched this
patch is not installed.
- 1.5b Speeded up Auto Vector Interrupts.
- 1.5a New Wait(). Some misc speedups. Aestetical changes to source.
- 1.5 Restored old WaitBlit() patch (version 1.2 of SystemPatch) for
safety reasons. Added utility.library patches.
Reworked source. New Wait().
- 1.4 Removed a bug in QBlit() patch. Added QBSBlit() patch.
- 1.3 Changed WaitBlit() patch (it's a little faster to return if
blitter is not busy). Added a QBlit() patch.
- 1.2 First public release. Reworked patch installation code to do it more
compatible with Executive (this is done by removing Switch() patch).
- 1.1 Fixed a bug in Schedule() that made to crash my system sometimes.
- 1.0 First internal release.